home *** CD-ROM | disk | FTP | other *** search
/ Freelog 100 / FreelogNo100-NovembreDecembre2010.iso / Musique / solfege / solfege-win32-3.17.0.exe / {app} / bin / Lib / types.py < prev    next >
Text File  |  2006-08-03  |  3KB  |  102 lines

  1. """Define names for all type symbols known in the standard interpreter.
  2.  
  3. Types that are part of optional modules (e.g. array) are not listed.
  4. """
  5. import sys
  6.  
  7. # Iterators in Python aren't a matter of type but of protocol.  A large
  8. # and changing number of builtin types implement *some* flavor of
  9. # iterator.  Don't check the type!  Use hasattr to check for both
  10. # "__iter__" and "next" attributes instead.
  11.  
  12. NoneType = type(None)
  13. TypeType = type
  14. ObjectType = object
  15.  
  16. IntType = int
  17. LongType = long
  18. FloatType = float
  19. BooleanType = bool
  20. try:
  21.     ComplexType = complex
  22. except NameError:
  23.     pass
  24.  
  25. StringType = str
  26.  
  27. # StringTypes is already outdated.  Instead of writing "type(x) in
  28. # types.StringTypes", you should use "isinstance(x, basestring)".  But
  29. # we keep around for compatibility with Python 2.2.
  30. try:
  31.     UnicodeType = unicode
  32.     StringTypes = (StringType, UnicodeType)
  33. except NameError:
  34.     StringTypes = (StringType,)
  35.  
  36. BufferType = buffer
  37.  
  38. TupleType = tuple
  39. ListType = list
  40. DictType = DictionaryType = dict
  41.  
  42. def _f(): pass
  43. FunctionType = type(_f)
  44. LambdaType = type(lambda: None)         # Same as FunctionType
  45. try:
  46.     CodeType = type(_f.func_code)
  47. except RuntimeError:
  48.     # Execution in restricted environment
  49.     pass
  50.  
  51. def _g():
  52.     yield 1
  53. GeneratorType = type(_g())
  54.  
  55. class _C:
  56.     def _m(self): pass
  57. ClassType = type(_C)
  58. UnboundMethodType = type(_C._m)         # Same as MethodType
  59. _x = _C()
  60. InstanceType = type(_x)
  61. MethodType = type(_x._m)
  62.  
  63. BuiltinFunctionType = type(len)
  64. BuiltinMethodType = type([].append)     # Same as BuiltinFunctionType
  65.  
  66. ModuleType = type(sys)
  67. FileType = file
  68. XRangeType = xrange
  69.  
  70. try:
  71.     raise TypeError
  72. except TypeError:
  73.     try:
  74.         tb = sys.exc_info()[2]
  75.         TracebackType = type(tb)
  76.         FrameType = type(tb.tb_frame)
  77.     except AttributeError:
  78.         # In the restricted environment, exc_info returns (None, None,
  79.         # None) Then, tb.tb_frame gives an attribute error
  80.         pass
  81.     tb = None; del tb
  82.  
  83. SliceType = slice
  84. EllipsisType = type(Ellipsis)
  85.  
  86. DictProxyType = type(TypeType.__dict__)
  87. NotImplementedType = type(NotImplemented)
  88.  
  89. # Extension types defined in a C helper module.  XXX There may be no
  90. # equivalent in implementations other than CPython, so it seems better to
  91. # leave them undefined then to set them to e.g. None.
  92. try:
  93.     import _types
  94. except ImportError:
  95.     pass
  96. else:
  97.     GetSetDescriptorType = type(_types.Helper.getter)
  98.     MemberDescriptorType = type(_types.Helper.member)
  99.     del _types
  100.  
  101. del sys, _f, _g, _C, _x                           # Not for export
  102.